草庐IT

xml - 空白子节点对 XML 解析器有用吗?

全部标签

ruby - 针对每一行的多个(15+)正则表达式解析文本正文的最佳方法是什么?

我有一段文本需要扫描,每行至少包含2部分信息,有时包含4部分信息。问题是每一行可能是15-20种不同操作中的一种。在ruby​​中,当前代码看起来像这样:text.split("\n").eachdo|line|#around20times................expressions['actions'].eachdo|pat,reg|#around20times.................这显然是“问题所在”。通过将所有正则表达式合并为一个,我确实设法使其更快(在C++中提高了50%),但这仍然不是我需要的速度——我需要快速解析数千个这些文件!现在我将它们与正则表达式

ruby - 如何解析 "Your bundle only supports platforms ["x86-mingw3 2"] but your local platforms are ["ruby​​", "x86_64-linux"]"

我正在Windows机器上构建一个Rails站点,但是当我检查我的Gemfile.lock时,我在我的Travis构建中遇到以下错误:Yourbundleonlysupportsplatforms["x86-mingw32"]butyourlocalplatformsare["ruby","x86_64-linux"],andthere'snocompatiblematchbetweenthosetwo列表这是完整的日志:https://travis-ci.org/bikebike/BikeBike/builds/222395810#L654我查看了我的Gemfile.lock并指出:

ruby - 在 Rails 应用程序中导入 CSV 时忽略具有空白值的行

我有一个允许用户导入CSV数据的应用程序。一切正常,直到用户开始导入CSV文件中包含空白行的数据。我正在使用以下内容从CSV文件中获取行:CSV.readlines(import_file,headers:true,skip_blanks:true)我认为如果我将选项添加到skip_blanks它会这样做,但事实并非如此。关于如何忽略空白行的任何想法。谢谢! 最佳答案 这应该可行CSV.open(import_file,skip_blanks:true).reject{|row|row.all?(&:nil?)}编辑您请求了read

ruby - 如何使用 XPath 和 Nokogiri 获取 XML 节点的内容

我有这样的代码:@doc=Nokogiri::HTML(open(url)@doc.xpath(query).eachdo|html|putshtml#howgetcontentofanodeend我如何获取节点的内容而不是像这样: 最佳答案 这是READMEfile中的概要示例为Nokogiri展示了一种使用CSS、XPath或混合的方法:require'nokogiri'require'open-uri'#GetaNokogiri::HTML:Documentforthepagewe’reinterestedin...doc=N

ruby - 如何使用 Nokogiri 解析和抓取 URL 的元标记?

我正在使用Nokogiri来拉取和标签,但我无法获得这些:我有这个代码:url='https://en.wikipedia.org/wiki/Emma_Watson'page=Nokogiri::HTML(open(url))putspage.css('title')[0].textputspage.css('h1')[0].textputspage.css('description')putsMETADESCRIPTIONputsMETAKEYWORDS我查看了文档,但没有找到任何内容。我会使用正则表达式来执行此操作吗?谢谢。 最佳答案

ruby - Nokogiri 文本节点内容

有没有什么干净的方法可以用Nokogiri获取文本节点的内容?现在我正在使用some_node.at_xpath("//whatever").first.content这对于获取文本来说似乎真的很冗长。 最佳答案 您只想要文本?doc.search('//text()').map(&:text)也许您不想要所有的空白和噪音。如果您只想要包含单词字符的文本节点,doc.search('//text()').map(&:text).delete_if{|x|x!~/\w/}编辑:看来您只想要单个节点的文本内容:some_node.at_

ruby - nil.to_json 无法解析回 nil?

此代码段抛出异常:x=niljsoned=x.to_jsonputs'x.to_json='+jsoned.inspectputs'back='+JSON.parse(jsoned).inspectC:/ruby/lib/ruby/1.9.1/json/common.rb:146:in`parse':706:unexpectedtokenat'null'(JSON::ParserError)x.to_json="null"fromC:/ruby/lib/ruby/1.9.1/json/common.rb:146:in`parse'fromC:/dev/prototyping/appox

ruby :空白?没有 Rails

我想做这个测试:if(line.blank?)do_stuff...但我使用的是纯ruby,而不是导轨。实现相同效果的公认成语是什么?我正在为字符串执行此操作,其中测试.empty?与测试.blank不同吗?(全空白字符串不是空的,而是空白的。) 最佳答案 这是可能的:line.to_s.strip.empty? 关于ruby:空白?没有Rails,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/qu

ruby-on-rails - 解析 youtube 网址

我写了一个ruby​​youtubeurl解析器。它旨在接受以下结构之一的youtubeurl输入(这些是目前我能找到的youtubeurl结构,也许还有更多?):http://youtu.be/sGE4HMvDe-Qhttp://www.youtube.com/watch?v=Lp7E973zozc&feature=relmfuhttp://www.youtube.com/p/A0C3C1D163BE880A?hl=en_US&fs=1目的是仅保存剪辑或播放列表的ID,以便可以将其嵌入,因此如果它是剪辑:'sGE4HMvDe-Q',或者如果它是播放列表:'p/A0C3C1D

ruby - 如何使用 ActiveSupport 3 (Rails) 解析带有不带引号键的无效 JSON

我需要在Ruby中解析某些无效的JSON。类似于:json_str='{name:"Javier"}'ActiveSupport::JSON.decodejson_str如你所见,它是无效的,因为哈希键没有被引用,它应该是json_str='{"name":"Javier"}'但这无法更改,我必须解析未加引号的键。我可以用ActiveSupport2.x解析它,但ActiveSupport3不允许。它抛出我:Yajl::ParseError:lexicalerror:invalidstringinjsontext.{name:"Javier"}(righthere)------^顺便说